"""这里负责的是飞船部分的逻辑"""
import pygame as ga
class Ship:
    """管理飞船的类"""
    def __init__(self,ai_game):
        """用于初始化飞船,并且确认飞船的位置"""
        self.screen = ai_game.screen
        self.screen_rect = ai_game.screen.get_rect()
        self.set = ai_game.set
        #负责加载飞船图像并且获取其外接矩形
        self.image = ga.image.load('Picture/GG爆.bmp')
        #图片尺寸太大,负责进行修改
        self.new_width = 30
        self.new_height = 30
        self.image = ga.transform.scale(self.image, (self.new_width, self.new_height))
        self.rect = self.image.get_rect()
        #每个新飞船都应该放在屏幕的底部中央
        self.rect.midbottom = self.screen_rect.midbottom
        #下面是对于飞船的速度进行进一步的控制
        self.x = float(self.rect.x)

        #下面是前后左右移动的逻辑
        self.moving_right = False
        self.moving_left = False
        

    def update(self):
        """根据按键开始调整飞船的位置"""
        #开始对于飞船的位置进行进一步的修改
        if self.moving_right and self.rect.right < self.screen_rect.right:
            self.x+=self.set.ship_speed
        if self.moving_left and self.rect.left > 0:
            self.x-=self.set.ship_speed
        #在根据x调整完了位置后,让打印位置也同时进行更新
        self.rect.x=self.x

    def blitme(self):
        """根据实例在指定的位置上绘制飞船"""
        self.screen.blit(self.image,self.rect)

    def center_ship(self):
        self.rect.midbottom = self.screen_rect.midbottom
        self.x = float(self.rect.x)
